body {
	background-color: var(--background-color);
	color: var(--text-color);
	font-family: sans-serif;
	font-size: 10pt;
}

a:link, a:visited, a:active {
	color: var(--link-color);
}

input, textarea, select, button {
	background-color: var(--input-background-color);
	color: var(--text-color);
	border-color: var(--input-background-color);
	border-radius: 3px;
	padding: 1px;
}

button {
	background-image: var(--button-background-image);
	border-radius: 0px;
	border: 1px solid lightgray;
	margin: 2px;
	min-width: 7em;
	box-sizing: border-box;
	padding: 0.25em 0.5em;
	cursor: pointer;
	font-size: 1em;
}

button:focus {
	border-style: dotted;
}

select, input[type=checkbox]{
	-moz-appearance: none;
	appearance: none;
}

select {
	background-image: url("selectArrow.svg");
	background-position: 100% 50%;
	background-repeat: no-repeat;
	padding-right: 20px;
}

input[type=checkbox]{
	margin: 1.5px;
	width: 15px;
	height: 15px;
	line-height: 11px;
	border-style: inset;
	border-width: 2px;
	vertical-align: middle;
	overflow: hidden;
}
input[type=checkbox]:checked::before {
	content: "\2713";
	font-size: 100%;
	line-height: 11px;
	text-align: center;
	display: inline-block;
	height: 100%;
	width: 100%;
	vertical-align: top;
}

/* Input stack */

.stackedInputs > * {
	display: block;
	padding: 0.5em;
	margin: 0;
	background-color: transparent;
	background-image: none;
	border: 1px solid var(--stacked-inputs-border-color);
	cursor: pointer;
	width: 100%;
	text-align: left;
	height: auto;
	z-index: 1;
	position: relative;
	white-space: nowrap;
	color: currentColor;
}

.stackedInputs > * + * {
	border-top-width: 0;
}

.stackedInputs > *:first-child {
	border-radius: 3px 3px 0 0;
}

.stackedInputs > *:last-child {
	border-radius: 0 0 3px 3px;
}

.stackedInputs > *:active, .stackedInputs > *:hover, .stackedInputs > *:focus {
	z-index: 10;
	background-color: var(--stacked-inputs-focus-color);
}

.stackedInputs > input {
	box-sizing: border-box;
	cursor: initial;
	background-color: var(--input-background-color);
}